<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://xmlns.jcp.org/jsf/html"
      xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://xmlns.jcp.org/jsf/core">
    <ui:composition template="/template.xhtml">
        <ui:define name="title">
            <h:outputText value="#{permisoLabels.IndexTitulo}"></h:outputText>
        </ui:define>
        
        <ui:define name="body">
            <h:form>
                <p:panel style="font-size: x-small">
                    <h:panelGroup id="messagePanel" layout="block">
                        <h:messages errorStyle="color: red" infoStyle="color: green" layout="table"/>
                    </h:panelGroup>
                    <br/><br/>
                    <p:commandButton action="#{permisoController.cargarCrearPermiso()}" value="#{permisoLabels.CrearNuevo}"
                                   rendered="#{accionController.getAccionByVista('Permiso', 'Crear')}"
                                   ajax="false"/>
                    <br/><br/>
                    
                    <p:dataTable var="item" value="#{permisoController.items}" widgetVar="tablaPermisos"
                                 emptyMessage="#{permisoLabels.SinDatos}" rendered="#{permisoController.items.rowCount > 0}"
                                 paginator="true" rows="10"
                                 rowKey="#{item.id}">
                        <f:facet name="header">
                            <p:outputPanel>
                                <h:outputText value="Buscar por todos los criterios:" />
                                <p:inputText id="globalFilter" onkeyup="PF('tablaPermisos').filter()" style="width:200px" placeholder="Ingrese la palabra clave"/>
                            </p:outputPanel>
                        </f:facet>

                        <p:column headerText="#{permisoLabels.Nombre}" filterBy="#{item.nombre}" >
                            <h:outputText value="#{item.nombre}"/>
                        </p:column>
                        
                        <p:column headerText="#{permisoLabels.RutaAcceso}" filterBy="#{item.comando}" >
                            <h:outputText value="#{item.comando}"/>
                        </p:column>
                        
                        <p:column headerText="#{permisoLabels.RolesAsignados}" filterBy="#{item.comando}" >
                            <ul>
                                <ui:repeat value="#{rolController.getRolesPermisos(item.id)}" var="roles">
                                    <li>
                                        #{roles.nombre}
                                    </li>
                                </ui:repeat>
                            </ul>
                        </p:column>

                        <p:column headerText="#{permisoLabels.FechaCreacion}" filterBy="#{item.fecha_creacion}">
                            <h:outputText value="#{item.fecha_creacion}">
                                <f:convertDateTime pattern="dd/MMM/yyyy HH:mm:ss" locale="es_EC" timeZone="America/Guayaquil" />
                            </h:outputText>
                        </p:column>

                        <p:column headerText="#{permisoLabels.Estado}" filterBy="#{item.estado}">
                            <p:selectBooleanCheckbox disabled="true" value="#{item.estado}"/>
                        </p:column>

                        <p:column headerText="">
                            <div class="container" align="center">        
                                <p:commandButton ajax="false" action="#{permisoController.cargarEditarDetallePermiso(item.id)}" 
                                                 value="#{permisoLabels.Editar}"
                                                 rendered="#{accionController.getAccionByVista('Permiso', 'Editar')}"/> | 
                                <p:commandButton ajax="false" action="#{permisoController.cargarDetalleEditarPermiso(item.id)}" 
                                                 value="#{permisoLabels.Detalles}"
                                                 rendered="#{accionController.getAccionByVista('Permiso', 'Ver')}"/>
                            </div>
                        </p:column>

                    </p:dataTable>
                </p:panel>
            </h:form>
        </ui:define>
    </ui:composition>
</html>

